import $cookie from 'spore-kit-cookie/cookie'
import $capitalize from 'lodash/capitalize'
import { isTestIp } from '../util/getHttpConfig'

const isProd = process.env.NODE_ENV === 'production'

const Env = {
	// 使用 mock 服务替换接口
	enableMock: false,
	// 使用调试接口
	enableTest: false,
	// 打开日志开关
	enableFelog: false,
	// 显示 vconsole 控制台
	enableVconsole: false,
	// 在央视频客户端内
	isYSP: (/yangshipin/i).test(navigator.userAgent),
	// 当前在本地调试环境
	isLocal: false,
	isProd
}

Env.debugModeList = [
	'felog',
	'vconsole',
	'mock',
	'test'
]

if (typeof window !== 'undefined' && window.document) {
	const doc = window.document
	if (
		doc.domain === 'localhost' ||
		doc.domain === '127.0.0.1'
	) {
		Env.isLocal = true
	}

	Env.debugModeList.forEach(mode => {
		let reg = new RegExp(mode + '=on')
		if (reg.test(location.search) || $cookie.get('debug_' + mode)) {
			Env['enable' + $capitalize(mode)] = true
		}
	})
	if (!isProd) {
		Env.enableVconsole = true
	}
	if (isTestIp) {
		Env.enableTest = true
	}
	window.$env = Env
}

export default Env
